Systems and methods for value-based provision of television content in a hybrid quadrature amplitude modulation (qam)/internet protocol (ip) content delivery environment

ABSTRACT

A device may receive content data identifying television schedules for content to be provided for viewing in a first geographic location and a second geographic location, and may identify a first available time slot for content in the first geographic location and a second available time slot for content in the second geographic location. The device may identify a first set of content for the first available time slot and a second set of content for the second available time slot, and may assign values to the first and second sets. The device may determine whether the values assigned to the first and second sets satisfy a threshold value, and may cause, when a value of an content in the first set fails to satisfy the threshold value, a first client device, in the first geographic location, to obtain a replacement content with a value that satisfies the threshold value.

RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.16/746,420, entitled “SYSTEMS AND METHODS FOR VALUE-BASED PROVISION OFTELEVISION CONTENT IN A HYBRID QUADRATURE AMPLITUDE MODULATION(QAM)/INTERNET PROTOCOL (IP) CONTENT DELIVERY ENVIRONMENT,” filed Jan.17, 2020 (now U.S. Pat. No. 10,999,616), which is incorporated herein byreference in its entirety.

BACKGROUND

Television programming distributors (e.g., operating a content platform)may receive a quantity of time (e.g., in minutes) per hour (e.g., a timeslot) to utilize television content (e.g., advertisements) for eachtelevision channel distributed to subscribers. Content deliveryplatforms may deliver only a limited number of different televisioncontent on a same channel during a same time slot. A quantity of uniquecontent delivered in a single time slot is generally defined by aquantity of geographic locations supported in each market or by amaximum delivery capacity of an content delivery platform.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A-1I are diagrams of one or more example implementationsdescribed herein.

FIG. 2 is a diagram of an example environment in which systems and/ormethods described herein may be implemented.

FIG. 3 is a diagram of example components of one or more devices of FIG.2.

FIG. 4 is a flow chart of an example process for value-based provisionof television content in a hybrid quadrature amplitude modulation(QAM)/internet protocol (IP) content delivery environment.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The following detailed description of example implementations refers tothe accompanying drawings. The same reference numbers in differentdrawings may identify the same or similar elements.

When a television content is to be displayed, a set-top box (STB) mayreceive (e.g., from a content platform) instructions to switch to ahidden black channel provided via quadrature amplitude modulation (QAM)and designated for content. The hidden black channels may includechannels that provide content but may not be tuned to (e.g., by atelevision viewer) via the STB or a remote control for the STB. The STBprovides for display (e.g., on a television) the television contentprovided by the hidden black channel. Once the television content iscomplete, the STB may tune back to a content channel. The channelchanging operation for content insertion may be transparent to thetelevision viewer (e.g., a subscriber).

For time slots to be fully optimized, television content may bescheduled so that every time slot in every geographic location (e.g., alocal television viewing region) yields a maximum monetary value fortelevision programming distributors. A time slot in a geographiclocation may yield maximum monetary value when high value televisioncontent are sold for the time slot. In some instances, time slots in oneor more geographic locations may include no television content (e.g.,due to failure to sell content space). In such instances, the time slotsmay be filled with a low value television content or a zero valuetelevision content. Thus, current techniques for provision of televisioncontent waste computing resources (e.g., processing resources, memoryresources, communication resources, and/or the like), networkingresources, and/or the like, by providing low value television contentthat are not profitable for television programming distributors,providing zero value television content that cost television programmingdistributors money, and/or the like.

Some implementations described herein provide a content platform thatprovides value-based television content in a hybrid QAM/IP contentdelivery environment. For example, the content platform may receivecontent data identifying television schedules for content to be providedfor viewing in a first geographic location and a second geographiclocation, and may identify a first available time slot for televisioncontent (e.g., advertisements) to be provided for viewing in the firstgeographic location and a second available time slot for televisioncontent to be provided for viewing in the second geographic location.The content platform may identify a first set of television content forthe first available time slot and a second set of television content forthe second available time slot, and may assign values to the first setof television content and the second set of television content. Thecontent platform may determine whether the values assigned to the firstset of television content and the second set of television contentsatisfy a threshold value, and may cause, when a value of at least onetelevision content in the first set of television content fails tosatisfy the threshold value, a first client device, provided within thefirst geographic location, to obtain a replacement television contentwith a value that satisfies the threshold value more than the value ofthe at least one television content in the first set of televisioncontent. The content platform may cause the first client device toutilize the replacement television content during the first time slotand for viewing in the first geographic location.

In this way, the content platform provides value-based content in ahybrid QAM/IP content delivery environment. The content platform maymaximize a monetary value for television content presented in eachgeographic location so when a low value or a zero value televisioncontent is scheduled, the content platform can replace the scheduled lowvalue or zero value television content with a more valuable televisioncontent (e.g., an IP-based unicast television content provided via anSTB). Thus, the content platform conserves computing resources,networking resources, and/or the like that would otherwise be wasted inproviding low value television content that are not profitable fortelevision programming distributors, providing zero value televisioncontent that cost television programming distributors money, and/or thelike.

FIGS. 1A-1I are diagrams of one or more example implementations 100described herein. As shown in FIG. 1A, a first client device 105-1 and asecond client device 105-2 may be associated with a server device 110and a content platform 115. In some implementations, client devices 105may include STBs, televisions, mobile devices, and/or the like that auser may utilize to view content (e.g., television channels) provided bycontent platform 115. Client devices 105 may also interact with and/orreceive information (e.g., IP-based television content such as content,locations of IP-based television content, and/or the like) from serverdevice 110. Server device 110 may include a device that stores andprovides IP-based television content, information identifying locationsof IP-based television content, and/or the like. Content platform 115may include a platform that provides value-based content (e.g.,advertisements) in a hybrid QAM/IP content (e.g., advertisement)delivery environment.

As further shown in FIG. 1A, and by reference number 120, contentplatform 115 may receive, from server device 110, content dataidentifying television schedules for content to be provided for viewingin a first location (shown as location 1) and a second location (shownas location 2). The first location may be a first geographic locationand the second location may be a second geographic location that isdifferent from (e.g., geographically separate from) the first geographiclocation. Client device 105-1 may be associated with the first locationand client device 105-2 may be associated with the second location.Content platform 115 may periodically receive the content data, maycontinuously receive the content data, may receive the content databased on a request, and/or the like. Content platform 115 may store thecontent data in a data structure (e.g., a database, a table, a list,and/or the like) associated with content platform 115.

As shown in FIG. 1B, and by reference number 125, content platform 115may identify a first available time slot for television content to beprovided for viewing in the first location and a second available timeslot for television content to be provided for viewing in the secondlocation. For example, content platform 115 may identify the firstavailable time slot and/or the second available time slot based on thecontent data. In some implementations, the first available time slot andthe second available time slot may be based on a same time period, asame network, a same television program, and/or the like, but indifferent locations. In some implementations, the first available timeslot may include a first period of time for providing one or morecontent during provision of first content on a first television channelin the first location. In some implementations, the second availabletime slot may include a second period of time for providing one or morecontent during provision of second content on a second televisionchannel in the second location.

As shown in FIG. 1C, and by reference number 130, content platform 115may identify a first set of television content for the first availabletime slot and a second set of television content for the secondavailable time slot. In some implementations, content platform 115 maydetermine that three television content may be provided during the firstavailable time slot. Thus, content platform 115 may identify a firsttelevision content (e.g., content 1), a second television content (e.g.,content 2), and a third television content (e.g., content 3) forming thefirst set of television content. In some implementations, contentplatform 115 may determine that three television content may be providedduring the second available time slot. Thus, content platform 115 mayidentify a fourth television content (e.g., content 4), a fifthtelevision content (e.g., content 5), and a sixth television content(e.g., content 6) forming the second set of television content.

In some implementations, content platform 115 may process dataidentifying multiple television content available for the first timeslot, with a machine learning model, to identify a quantity oftelevision content to select for the first time slot, to select thefirst set of television content from the multiple television content,and/or the like. In some implementations, content platform 115 mayprocess data identifying multiple television content available for thesecond time slot, with the machine learning model, to identify aquantity of television content to select for the second time slot, toselect the second set of television content from the multiple televisioncontent, and/or the like.

As shown in FIG. 1D, and by reference number 135, content platform 115may assign values to the first set of television content and the secondset of television content. In some implementations, the values assignedto the first set of television content and the second set of televisioncontent may be associated with anticipated or potential value (e.g.,monetary value, brand awareness value, entity awareness value, and/orthe like) of the television content (e.g., for providers of televisioncontent during which the television content are to be aired). Forexample, the values may be based on historical content revenue orviewership associated with the television content, content of thetelevision content, target audiences associated with the televisioncontent, and/or the like. In some implementations, the values assignedto the first set of television content and the second set of televisioncontent may be based on a numeric range of values (e.g., a scale of 1 to10, with a higher number indicating a higher anticipated monetaryvalue), may be based on a cost per one thousand impressions (e.g., CPM),may be based on designations identifying value categories (e.g., lowvalues, medium values, and high values), and/or the like.

In some implementations, content platform 115 may process dataidentifying the first set of television content and historical contentrevenue data, with a machine learning model, to determine the values toassign to the first set of television content. In some implementations,content platform 115 may process data identifying the second set oftelevision content and the historical content revenue data, with themachine learning model, to determine the values to assign to the secondset of television content.

For example, as further shown in FIG. 1D, content platform 115 mayassign a value of nine to the first television content, may assign avalue of five to the second television content, and may assign a valueof seven to the third television content associated with the first setof television content. Content platform 115 may assign a value of eightto the fourth television content, may assign a value of nine to thefifth television content, and may assign a value of eight to the sixthtelevision content associated with the second set of television content.

As shown in FIG. 1E, and by reference number 140, content platform 115may determine whether the values assigned to the first set of televisioncontent and the second set of television content satisfy (e.g., aregreater than, greater than or equal to, and/or the like) a thresholdvalue. In some implementations, the threshold value may be dynamic valuethat changes based on time of day, content programming, location ofcontent viewing, and/or the like. In some implementations, contentplatform 115 may compare each value assigned to each television contentwith a threshold value (e.g., indicated as six in FIG. 1E), and maydetermine whether each value satisfies the threshold value. For example,based on a threshold value, content platform 115 may determine that thesecond television content (e.g., assigned a value of five) fails tosatisfy the threshold value (e.g., six). Content platform 115 may alsodetermine that the first television content (e.g., assigned a value ofnine), the third television content (e.g., assigned a value of seven),the fourth television content (e.g., assigned a value of eight), thefifth television content (e.g., assigned a value of nine), and the sixthtelevision content (e.g., assigned a value of eight) satisfy thethreshold value (e.g., six).

As shown in FIG. 1F, and by reference number 145, content platform 115may cause second client device 105-2 to utilize the second set oftelevision content during the second time slot and for viewing in thesecond location. For example, content platform 115 may cause secondclient device 105-2 to utilize all of the second set of televisioncontent (e.g., the fourth television content, the fifth televisioncontent, and the sixth television content), without replacing any of thesecond set of television content, based on determining that the valuesfor all of the television content in the second set of televisioncontent satisfy the threshold value. In this case, the values for all ofthe television content associated with the second available time slotsatisfy the threshold value (e.g., six) because the value for the fourthtelevision content (e.g., eight), the value for the fifth televisioncontent (e.g., nine), and the value for the sixth television content(e.g., eight) are all greater than the threshold value. In someimplementations, the second set of television content may be providedvia QAM.

As shown in FIG. 1G, and by reference number 150, content platform 115may cause first client device 105-1 to obtain a greater value televisioncontent for the second television content in the first set of televisioncontent. For example, content platform 115 may provide, to first clientdevice 105-1, an instruction to obtain a greater value televisioncontent for the second television content because the value of thesecond television content (e.g. five) fails to satisfy (e.g., is lessthan) the threshold value (e.g., six).

As further shown in FIG. 1G, and by reference number 155, first clientdevice 105-1 may provide, to server device 110, a request to identify areplacement television content for and with a greater value than thesecond television content. In some implementations, the request mayinclude information identifying the first location (e.g., location 1), avalue assigned to the television content being replaced, content of thetelevision content being replaced, a topic, name, subject, and/or thelike of a television program associated with the first time slot, and/orthe like. Server device 110 may receive the request to identify thereplacement television content, and may identify the replacementtelevision content based on the request. In some implementations,content platform 115 may provide values assigned to replacementtelevision content to server device 110 so that server device 110 mayutilize the values to select the replacement television content.Alternatively, or additionally, server device 110 may provide dataidentifying multiple replacement television content to content platform115, and content platform 115 may assign values to the multiplereplacement television content. In such a situation, server device 110and/or content platform 115 may identify the replacement televisioncontent (e.g., based on the assigned values). Alternatively, oradditionally, server device 110 may assign values to the multiplereplacement television content in the manner described above. In someimplementations, the replacement television content may include a valuethat is greater than the value assigned to the second televisioncontent, that is greater than the threshold value, and/or the like.

As further shown in FIG. 1G, and by reference number 160, first clientdevice 105-1 may receive, based on the request, an identification of thereplacement television content. For example, first client device 105-1may receive, based on the request and from server device 110, contentassociated with the replacement television content (e.g., as describedbelow in connection with FIG. 1H), may receive an identifier associatedwith the replacement television content, may receive a location or anaddress (e.g., an IP address) associated with the replacement televisioncontent, and/or the like.

As shown in FIG. 1H, and by reference number 165, first client device105-1 may obtain the replacement television content based on theidentification of the replacement television content. For example, firstclient device 105-1 may obtain the replacement television content (e.g.,New ad) from server device 110. In some implementations, the replacementtelevision content may be received from a streaming content deliveryservice provided by server device 110. In some implementations, thereplacement television content may include Internet protocol-basedcontent that is streamed from the content delivery service. In someimplementations, first client device 105-1 may receive the replacementtelevision content from a third-party content server device. In thiscase, first client device 105-1 may provide information to thethird-party content server device (e.g., demographic information,information specific to client device 105-1, a region associated withclient device 105-1, and/or the like) to obtain a targeted content basedon the information.

In some implementations, rather than obtaining the replacementtelevision content from server device 110, first client device 105-1 mayobtain the replacement television content from a storage device providedwithin first client device 105-1, For example, first client device 105-1may store one or more potential replacement television content, and mayidentify the replacement television content from among the potentialreplacement television content. In some implementations, first clientdevice 105-1 may include a set-top box that may store the potentialreplacement television content. In some implementations, first clientdevice 105-1 may include or may be associated with a digital videorecorder (DVR), and the DVR may store the potential replacementtelevision content, the replacement television content, and/or the like.

In some implementations, a plurality of replacement television contentmay be stored on first client device 105-1 at a given time and may bereplaced from time to time. First client device 105-1 may store a newplurality of television content for each upcoming time slot (e.g.,enough television content for the next six hours) and may replacetelevision content for past time slots with television content forfuture time slots (e.g., a rolling window of replacing old televisioncontent with new television content). In some implementations, thetelevision content stored by first client device 105-1 may have alreadybeen determined by content platform 115 to have values that satisfy thethreshold value. In some implementations, content platform 115 mayprovide, to first client device 105-1, the model used to assign thevalues to television content, and first client device 105-1 may utilizethe model to assign values to television content stored by first clientdevice 105-1. In some implementations, first client device may beassociated with a local server device (e.g., server device 110), alongwith other client devices 105 in a same geographic location, and thelocal server device may store the replacement television content onbehalf of client devices 105.

In some implementations, content platform 115 may cause, when the valueof a television content in the first set of television content fails tosatisfy the threshold value, first client device 105-1 to utilize thefirst set of television content, other than the television contenthaving a value that fails to satisfy the threshold value, during thefirst time slot and for viewing in the first location. For example, asshown in FIG. 1H and by reference number 170, first client device 105-1may provide the replacement television content (e.g., New ad) thatreplaced the second television content, with the remaining televisioncontent (e.g., the first television content (e.g., content 1) and thethird television content (e.g., content 3)) of the first set oftelevision content. In some implementations, first client device 105-1may provide the replacement television content via an IP-based streamand may provide the first set of television content, other than thesecond television content, via QAM. In some implementations, after thereplacement television content and the remaining television content areprovided, first client device 105-1 may tune to a previously-viewedchannel.

As further shown in FIG. 1H, and by reference number 175, contentplatform 115 may receive, from first client device 105-1, impressiondata associated with the replacement television content. The impressiondata may include data identifying a quantity of client devices 105 thatpresented the replacement content. In some implementations, contentplatform 115 may update the value associated with the replacementtelevision content based on the impression data. In this way, contentplatform 115 may continually adjust values of the replacement televisioncontent to reflect the most recent information available (e.g., withrespect to monetary value of the television content).

As shown in FIG. 11, and by reference number 155, first client device105-1 may provide, to server device 110, the request to identify thereplacement television content for and with the greater value than thesecond television content, as described above in connection with FIG.1G. As further shown in FIG. 1I, and by reference number 180, firstclient device 105-1 may receive, from server device 110 and based on therequest, an indication that the replacement television content is notavailable. In some implementations, server device 110 may be unable toidentify a replacement television content for the first time slot with avalue that is greater the value of the second television content. Insuch implementations, server device 110 may provide, to first clientdevice 105-1, the indication that the replacement television content isnot available. Alternatively, first client device 105-1 may determinethat the replacement television content is not available based on otherreasons. For example, first client device 105-1 may fail to receive aresponse from server device 110 due to a network outage or network lagfor a network connecting first client device 105-1 and server device110, an outage or congestion at server device 110, and/or the like.

As further shown in FIG. 1I, and by reference number 185, first clientdevice 105-1 may provide the first set of television content, during thefirst time slot and for viewing in the first location, when thereplacement television content is not available. For example, firstclient device 105-1 may provide (e.g., via QAM) the first televisioncontent, the second television content, and the third televisioncontent, of the first set of television content, when the replacementtelevision content is not available since providing a low valuetelevision content is better than not providing a television content ina time slot.

In this way, several different stages of the process for value-basedprovision of content in a hybrid QAM/IP content delivery environment areautomated, which may remove human subjectivity and waste from theprocess, and which may improve speed and efficiency of the process andconserve computing resources (e.g., processing resources, memoryresources, communication resources, and/or the like), networkingresources, and/or the like. Furthermore, implementations describedherein use a rigorous, computerized process to perform tasks or rolesthat were not previously performed or were previously performed usingsubjective human intuition or input. For example, currently there doesnot exist a technique that provides value-based content in a hybridQAM/IP content delivery environment in the manner described herein.Finally, the process for value-based provision of content in a hybridQAM/IP content delivery environment conserves computing resources,networking resources, and/or the like that would otherwise be wasted inproviding low value television content that are not profitable fortelevision programming distributors, providing zero value televisioncontent that cost television programming distributors money, and/or thelike.

As indicated above, FIGS. 1A-1I are provided merely as examples. Otherexamples may differ from what was described with regard to FIGS. 1A-1I.The number and arrangement of devices and networks shown in FIGS. 1A-1Iare provided as an example. In practice, there may be additional devicesand/or networks, fewer devices and/or networks, different devices and/ornetworks, or differently arranged devices and/or networks than thoseshown in FIGS. 1A-1I. Furthermore, two or more devices shown in FIGS.1A-1I may be implemented within a single device, or a single deviceshown in FIGS. 1A-1I may be implemented as multiple, distributeddevices. Additionally, or alternatively, a set of devices (e.g., one ormore devices) of FIGS. 1A-1I may perform one or more functions describedas being performed by another set of devices of FIGS. 1A-1I.

FIG. 2 is a diagram of an example environment 200 in which systemsand/or methods described herein may be implemented. As shown in FIG. 2,environment 200 may include client device 105, server device 110,content platform 115, and a network 230. Devices of environment 200 mayinterconnect via wired connections, wireless connections, or acombination of wired and wireless connections.

Client device 105 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information, such asinformation described herein. For example, client device 105 may includea set-top box, a television, a mobile phone (e.g., a smart phone, aradiotelephone, and/or the like), a laptop computer, a tablet computer,a desktop computer, a handheld computer, a gaming device, a wearablecommunication device (e.g., a smart watch, a pair of smart glasses, aheart rate monitor, a fitness tracker, smart clothing, smart jewelry, ahead mounted display, and/or the like), or a similar type of device. Insome implementations, client device 105 may receive information fromand/or transmit information to server device 110 and/or content platform115.

Server device 110 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information, asdescribed herein. For example, server device 110 may include a laptopcomputer, a tablet computer, a desktop computer, a group of serverdevices, or a similar type of device. In some implementations, serverdevice 110 may receive information from and/or transmit information toclient device 105 and/or content platform 115.

Content platform 115 includes one or more devices that providevalue-based content in a hybrid QAM/IP content delivery environment. Insome implementations, content platform 115 may be designed to be modularsuch that certain software components may be swapped in or out dependingon a particular need. As such, content platform 115 may be easily and/orquickly reconfigured for different uses. In some implementations,content platform 115 may receive information from and/or transmitinformation to one or more client devices 105 and/or one or more serverdevices 110.

In some implementations, as shown, content platform 115 may be hosted ina cloud computing environment 210. Notably, while implementationsdescribed herein describe content platform 115 as being hosted in cloudcomputing environment 210, in some implementations, content platform 115may not be cloud-based (i.e., may be implemented outside of a cloudcomputing environment) or may be partially cloud-based.

Cloud computing environment 210 includes an environment that hostscontent platform 115. Cloud computing environment 210 may providecomputation, software, data access, storage, etc., services that do notrequire end-user knowledge of a physical location and configuration ofsystem(s) and/or device(s) that hosts content platform 115. As shown,cloud computing environment 210 may include a group of computingresources 220 (referred to collectively as “computing resources 220” andindividually as “computing resource 220”).

Computing resource 220 includes one or more personal computers,workstation computers, mainframe devices, or other types of computationand/or communication devices. In some implementations, computingresource 220 may host content platform 115. The cloud resources mayinclude compute instances executing in computing resource 220, storagedevices provided in computing resource 220, data transfer devicesprovided by computing resource 220, etc. In some implementations,computing resource 220 may communicate with other computing resources220 via wired connections, wireless connections, or a combination ofwired and wireless connections.

As further shown in FIG. 2, computing resource 220 includes a group ofcloud resources, such as one or more applications (“APPs”) 220-1, one ormore virtual machines (“VMs”) 220-2, virtualized storage (“VSs”) 220-3,one or more hypervisors (“HYPs”) 220-4, and/or the like.

Application 220-1 includes one or more software applications that may beprovided to or accessed by client device 105. Application 220-1 mayeliminate a need to install and execute the software applications onclient device 105. For example, application 220-1 may include softwareassociated with content platform 115 and/or any other software capableof being provided via cloud computing environment 210. In someimplementations, one application 220-1 may send/receive informationto/from one or more other applications 220-1, via virtual machine 220-2.

Virtual machine 220-2 includes a software implementation of a machine(e.g., a computer) that executes programs like a physical machine.Virtual machine 220-2 may be either a system virtual machine or aprocess virtual machine, depending upon use and degree of correspondenceto any real machine by virtual machine 220-2. A system virtual machinemay provide a complete system platform that supports execution of acomplete operating system (“OS”). A process virtual machine may executea single program and may support a single process. In someimplementations, virtual machine 220-2 may execute on behalf of a user(e.g., a user of client device 105 or an operator of content platform115), and may manage infrastructure of cloud computing environment 210,such as data management, synchronization, or long-duration datatransfers.

Virtualized storage 220-3 includes one or more storage systems and/orone or more devices that use virtualization techniques within thestorage systems or devices of computing resource 220. In someimplementations, within the context of a storage system, types ofvirtualizations may include block virtualization and filevirtualization. Block virtualization may refer to abstraction (orseparation) of logical storage from physical storage so that the storagesystem may be accessed without regard to physical storage orheterogeneous structure. The separation may permit administrators of thestorage system flexibility in how the administrators manage storage forend users. File virtualization may eliminate dependencies between dataaccessed at a file level and a location where files are physicallystored. This may enable optimization of storage use, serverconsolidation, and/or performance of non-disruptive file migrations.

Hypervisor 220-4 may provide hardware virtualization techniques thatallow multiple operating systems (e.g., “guest operating systems”) toexecute concurrently on a host computer, such as computing resource 220.Hypervisor 220-4 may present a virtual operating platform to the guestoperating systems and may manage the execution of the guest operatingsystems. Multiple instances of a variety of operating systems may sharevirtualized hardware resources.

Network 230 includes one or more wired and/or wireless networks. Forexample, network 230 may include a cellular network (e.g., a fifthgeneration (5G) network, a long-term evolution (LTE) network, a thirdgeneration (3G) network, a code division multiple access (CDMA) network,etc.), a public land mobile network (PLMN), a local area network (LAN),a wide area network (WAN), a metropolitan area network (MAN), atelephone network (e.g., the Public Switched Telephone Network (PSTN)),a private network, an content hoc network, an intranet, the Internet, afiber optic-based network, and/or the like, and/or a combination ofthese or other types of networks.

The number and arrangement of devices and networks shown in FIG. 2 areprovided as an example. In practice, there may be additional devicesand/or networks, fewer devices and/or networks, different devices and/ornetworks, or differently arranged devices and/or networks than thoseshown in FIG. 2. Furthermore, two or more devices shown in FIG. 2 may beimplemented within a single device, or a single device shown in FIG. 2may be implemented as multiple, distributed devices. Additionally, oralternatively, a set of devices (e.g., one or more devices) ofenvironment 200 may perform one or more functions described as beingperformed by another set of devices of environment 200.

FIG. 3 is a diagram of example components of a device 300. Device 300may correspond to client device 105, server device 110, content platform115, and/or computing resource 220. In some implementations, clientdevice 105, server device 110, content platform 115, and/or computingresource 220 may include one or more devices 300 and/or one or morecomponents of device 300. As shown in FIG. 3, device 300 may include abus 310, a processor 320, a memory 330, a storage component 340, aninput component 350, an output component 360, and a communicationinterface 370.

Bus 310 includes a component that permits communication among thecomponents of device 300. Processor 320 is implemented in hardware,firmware, or a combination of hardware and software. Processor 320 is acentral processing unit (CPU), a graphics processing unit (GPU), anaccelerated processing unit (APU), a microprocessor, a microcontroller,a digital signal processor (DSP), a field-programmable gate array(FPGA), an application-specific integrated circuit (ASIC), or anothertype of processing component. In some implementations, processor 320includes one or more processors capable of being programmed to perform afunction. Memory 330 includes a random-access memory (RAM), a read onlymemory (ROM), and/or another type of dynamic or static storage device(e.g., a flash memory, a magnetic memory, and/or an optical memory) thatstores information and/or instructions for use by processor 320.

Storage component 340 stores information and/or software related to theoperation and use of device 300. For example, storage component 340 mayinclude a hard disk (e.g., a magnetic disk, an optical disk, amagneto-optic disk, and/or a solid-state disk), a compact disc (CD), adigital versatile disc (DVD), a floppy disk, a cartridge, a magnetictape, and/or another type of non-transitory computer-readable medium,along with a corresponding drive.

Input component 350 includes a component that permits device 300 toreceive information, such as via user input (e.g., a touch screendisplay, a keyboard, a keypad, a mouse, a button, a switch, and/or amicrophone). Additionally, or alternatively, input component 350 mayinclude a sensor for sensing information (e.g., a global positioningsystem (GPS) component, an accelerometer, a gyroscope, and/or anactuator). Output component 360 includes a component that providesoutput information from device 300 (e.g., a display, a speaker, and/orone or more light-emitting diodes (LEDs)).

Communication interface 370 includes a transceiver-like component (e.g.,a transceiver and/or a separate receiver and transmitter) that enablesdevice 300 to communicate with other devices, such as via a wiredconnection, a wireless connection, or a combination of wired andwireless connections. Communication interface 370 may permit device 300to receive information from another device and/or provide information toanother device. For example, communication interface 370 may include anEthernet interface, an optical interface, a coaxial interface, aninfrared interface, a radio frequency (RF) interface, a universal serialbus (USB) interface, a Wi-Fi interface, a cellular network interface,and/or the like.

Device 300 may perform one or more processes described herein. Device300 may perform these processes based on processor 320 executingsoftware instructions stored by a non-transitory computer-readablemedium, such as memory 330 and/or storage component 340. Acomputer-readable medium is defined herein as a non-transitory memorydevice. A memory device includes memory space within a single physicalstorage device or memory space spread across multiple physical storagedevices.

Software instructions may be read into memory 330 and/or storagecomponent 340 from another computer-readable medium or from anotherdevice via communication interface 370. When executed, softwareinstructions stored in memory 330 and/or storage component 340 may causeprocessor 320 to perform one or more processes described herein.Additionally, or alternatively, hardwired circuitry may be used in placeof or in combination with software instructions to perform one or moreprocesses described herein. Thus, implementations described herein arenot limited to any specific combination of hardware circuitry andsoftware.

The number and arrangement of components shown in FIG. 3 are provided asan example. In practice, device 300 may include additional components,fewer components, different components, or differently arrangedcomponents than those shown in FIG. 3. Additionally, or alternatively, aset of components (e.g., one or more components) of device 300 mayperform one or more functions described as being performed by anotherset of components of device 300.

FIG. 4 is a flow chart of an example process 400 for value-basedprovision of content in a hybrid QAM/IP content delivery environment. Insome implementations, one or more process blocks of FIG. 4 may beperformed by a device (e.g., content platform 115). In someimplementations, one or more process blocks of FIG. 4 may be performedby another device or a group of devices separate from or including thedevice, such as a client device (e.g., client device 105) and/or aserver device (e.g., server device 110).

As shown in FIG. 4, process 400 may include receiving content dataidentifying television schedules (block 410). For example, the device(e.g., using computing resource 220, processor 320, communicationinterface 370, and/or the like) may receive content data identifyingtelevision schedules for content to be provided for viewing in a firstgeographic location and a second geographic location, as describedabove.

As further shown in FIG. 4, process 400 may include identifying a firstavailable time slot for television content and a second available timeslot for television content (block 420). For example, the device (e.g.,using computing resource 220, processor 320, memory 330, and/or thelike) may identify a first available time slot for television content tobe provided for viewing in the first geographic location and a secondavailable time slot for television content to be provided for viewing inthe second geographic location, as described above.

As further shown in FIG. 4, process 400 may include identifying a firstset of television content for the first available time slot and a secondset of television content for the second available time slot (block430). For example, the device (e.g., using computing resource 220,processor 320, storage component 340, and/or the like) may identify afirst set of television content for the first available time slot and asecond set of television content for the second available time slot, asdescribed above.

As further shown in FIG. 4, process 400 may include assigning values tothe first set of television content and the second set of televisioncontent (block 440). For example, the device (e.g., using computingresource 220, processor 320, memory 330, storage component 340, and/orthe like) may assign values to the first set of television content andthe second set of television content, as described above. The valuesassigned to the first set of television content and the second set oftelevision content may be based a numeric range of values; a cost perone thousand impressions; designations identifying low values, mediumvalues, and high values; and/or the like.

As further shown in FIG. 4, process 400 may include determining whetherthe values assigned to the first set of television content and thesecond set of television content satisfy a threshold value (block 450).For example, the device (e.g., using computing resource 220, processor320, memory 330, and/or the like) may determine whether the valuesassigned to the first set of television content and the second set oftelevision content satisfy a threshold value, as described above.

As further shown in FIG. 4, process 400 may include causing a firstclient device, provided within the first geographic location, to obtaina replacement television content with a value that satisfies thethreshold value more than the value of the at least one televisioncontent (block 460). For example, the device (e.g., using computingresource 220, processor 320, memory 330, storage component 340,communication interface 370, and/or the like) may cause, when a value ofat least one television content in the first set of television contentfails to satisfy the threshold value, a first client device, providedwithin the first geographic location, to obtain a replacement televisioncontent with a value that satisfies the threshold value more than thevalue of the at least one television content in the first set oftelevision content, as described above. The replacement televisioncontent may be received from a streaming content delivery service or astorage device provided within the first client device. The replacementtelevision content may include Internet protocol-based content that isstreamed from a content delivery service.

The first client device may include a set-top box, and a plurality ofreplacement television content, from which the replacement televisioncontent is selected, may be stored in the set-top box.

As further shown in FIG. 4, process 400 may include causing the firstclient device to utilize the replacement television content during thefirst time slot and for viewing in the first geographic location (block470). For example, the device (e.g., using computing resource 220,processor 320, memory 330, storage component 340, communicationinterface 370, and/or the like) may cause the first client device toutilize the replacement television content during the first time slotand for viewing in the first geographic location, as described above.

Process 400 may include additional implementations, such as any singleimplementation or any combination of implementations described above,below, and/or in connection with one or more other processes describedelsewhere herein.

In some implementations, process 400 may include receiving, from thefirst client device, impression data associated with the first clientdevice utilizing the replacement television content during the firsttime slot and for viewing in the first geographic location; and updatingthe value associated with the replacement television content based onthe impression data.

In some implementations, process 400 may include causing a second clientdevice, provided within the second geographic location, to utilize thesecond set of television content during the second time slot and forviewing in the second geographic location based on determining thatvalues assigned to the second set of television content satisfy thethreshold value. The second set of television content may be providedvia quadrature amplitude modulation.

In some implementations, the first client device may utilize the firstset of television content during the first time slot and for viewing inthe first geographic location when the first client device fails toobtain the replacement television content for the at least onetelevision content in the first set of television content.

In some implementations, process 400 may include causing, when the valueof the at least one television content in the first set of televisioncontent fails to satisfy the threshold value, the first client device toutilize the first set of television content, other than the at least onetelevision content, during the first time slot and for viewing in thefirst geographic location. The replacement television content may beprovided via an Internet protocol-based stream and the first set oftelevision content, other than the at least one television content, maybe provided via quadrature amplitude modulation.

In some implementations, a previously-viewed channel may be tuned toafter the replacement television content and the first set of televisioncontent, other than the at least one television content are provided.

Although FIG. 4 shows example blocks of process 400, in someimplementations, process 400 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 4. Additionally, or alternatively, two or more of theblocks of process 400 may be performed in parallel.

The foregoing disclosure provides illustration and description, but isnot intended to be exhaustive or to limit the implementations to theprecise form disclosed. Modifications and variations may be made inlight of the above disclosure or may be acquired from practice of theimplementations.

As used herein, the term “component” is intended to be broadly construedas hardware, firmware, or a combination of hardware and software.

To the extent the aforementioned implementations collect, store, oremploy personal information of individuals, it should be understood thatsuch information shall be used in accordance with all applicable lawsconcerning protection of personal information. Additionally, thecollection, storage, and use of such information can be subject toconsent of the individual to such activity, for example, through wellknown “opt-in” or “opt-out” processes as can be appropriate for thesituation and type of information. Storage and use of personalinformation can be in an appropriately secure manner reflective of thetype of information, for example, through various encryption andanonymization techniques for particularly sensitive information.

It will be apparent that systems and/or methods described herein may beimplemented in different forms of hardware, firmware, or a combinationof hardware and software. The actual specialized control hardware orsoftware code used to implement these systems and/or methods is notlimiting of the implementations. Thus, the operation and behavior of thesystems and/or methods were described herein without reference tospecific software code—it being understood that software and hardwaremay be designed to implement the systems and/or methods based on thedescription herein.

Even though particular combinations of features are recited in theclaims and/or disclosed in the specification, these combinations are notintended to limit the disclosure of various implementations. In fact,many of these features may be combined in ways not specifically recitedin the claims and/or disclosed in the specification. Although eachdependent claim listed below may directly depend on only one claim, thedisclosure of various implementations includes each dependent claim incombination with every other claim in the claim set.

No element, act, or instruction used herein should be construed ascritical or essential unless explicitly described as such. Also, as usedherein, the articles “a” and “an” are intended to include one or moreitems, and may be used interchangeably with “one or more.” Further, asused herein, the article “the” is intended to include one or more itemsreferenced in connection with the article “the” and may be usedinterchangeably with “the one or more.” Furthermore, as used herein, theterm “set” is intended to include one or more items (e.g., relateditems, unrelated items, a combination of related and unrelated items,etc.), and may be used interchangeably with “one or more.” Where onlyone item is intended, the phrase “only one” or similar language is used.Also, as used herein, the terms “has,” “have,” “having,” or the like areintended to be open-ended terms. Further, the phrase “based on” isintended to mean “based, at least in part, on” unless explicitly statedotherwise. Also, as used herein, the term “or” is intended to beinclusive when used in a series and may be used interchangeably with“and/or,” unless explicitly stated otherwise (e.g., if used incombination with “either” or “only one of”).

What is claimed is:
 1. A method comprising: identifying, by a device, aset of content, associated with a location, for an available time slotassociated with the location; assigning, by the device, values tocontent of the set of content; causing, by the device and based ondetermining that a first value associated with a first content of theset of content does not satisfy a threshold value, a replacementcontent, associated with a second value that satisfies the thresholdvalue, to be obtained; and causing, by the device, the replacementcontent to be provided during the available time slot for viewing at thelocation.
 2. The method of claim 1, wherein the set of content is afirst set of content, the location is a first location, and theavailable time slot is a first available time slot, and the methodfurther comprising: identifying, a second set of content, associatedwith a second location, for a second available time slot associated withthe second location; assigning values to content of the second set ofcontent; and causing, based on determining that the values assigned tothe content of the second set of content satisfy the threshold value,the second set of content to be utilized during the second availabletime slot for viewing at the second location.
 3. The method of claim 1,further comprising: receiving data identifying a quantity of devicesthat presented the replacement content; and updating the second valueassociated with the replacement content based on the data.
 4. The methodof claim 1, wherein the set of content is a first set of content, themethod further comprising: replacing the first content with thereplacement content; and causing a second set of content to be providedduring the available time slot at the location, wherein the second setof content includes the replacement content and content of the first setof content.
 5. The method of claim 1, further comprising: determining,based on processing data identifying a plurality of content availablefor the available time slot with a machine learning model, a quantity ofcontent to select for the set of content; and selecting, based on thedetermined quantity, the set of content from the plurality of content.6. The method of claim 1, wherein the threshold value is a dynamic valuethat changes based on at least one of: a time of day, informationassociated with content programming, or a viewing location associatedwith viewing content data.
 7. The method of claim 1, wherein the firstvalue and the second value are determined based on at least one of:historical content revenue associated with the content of the set ofcontent, information associated with viewership associated with thecontent of the set of content, information identifying target audiencesassociated with the content of the set of content, a cost, orinformation identifying value categories.
 8. A device, comprising: oneor more processors configured to: identify a set of content, associatedwith a location, for an available time slot associated with thelocation; assign values to content of the set of content; cause, basedon determining that a first value associated with a first content of theset of content does not satisfy a threshold value, a replacementcontent, associated with a second value that satisfies the thresholdvalue, to be obtained; and cause the replacement content to be providedduring the available time slot for viewing at the location.
 9. Thedevice of claim 8, wherein the set of content is a first set of content,the location is a first location, and the available time slot is a firstavailable time slot, and wherein the one or more processors are furtherconfigured to: identify a second set of content, associated with asecond location, for a second available time slot associated with thesecond location; assign values to content of the second set of content;and cause, based on determining that the values assigned to the contentof the second set of content satisfy the threshold value, the second setof content to be utilized during the second available time slot forviewing at the second location.
 10. The device of claim 8, wherein theone or more processors are further configured to: receive dataidentifying a quantity of devices that presented the replacementcontent; and update the second value associated with the replacementcontent based on the data.
 11. The device of claim 8, wherein the set ofcontent is a first set of content, and wherein the one or moreprocessors are further configured to: replace the first content with thereplacement content; and cause a second set of content to be providedduring the available time slot at the location, wherein the second setof content includes the replacement content and content of the first setof content.
 12. The device of claim 8, wherein the one or moreprocessors are further configured to: determine, based on processingdata identifying a plurality of content available for the available timeslot with a machine learning model, a quantity of content to select forthe set of content; and select, based on the determined quantity, theset of content from the plurality of content.
 13. The device of claim 8,wherein the threshold value is a dynamic value that changes based on atleast one of: a time of day, information associated with contentprogramming, or a viewing location associated with viewing content data.14. The device of claim 8, wherein the first value and the second valueare determined based on at least one of: historical content revenueassociated with the content of the set of content, informationassociated with viewership associated with the content of the set ofcontent, information identifying target audiences associated with thecontent of the set of content, a cost, or information identifying valuecategories.
 15. A non-transitory computer-readable medium storing a setof instructions, the set of instructions comprising: one or moreinstructions that, when executed by one or more processors of a device,cause the device to: identify a set of content, associated with alocation, for an available time slot associated with the location;assign values to content of the set of content; cause, based ondetermining that a first value associated with a first content of theset of content does not satisfy a threshold value, a replacementcontent, associated with a second value that satisfies the thresholdvalue, to be obtained; and cause the replacement content to be providedduring the available time slot for viewing at the location.
 16. Thenon-transitory computer-readable medium of claim 15, wherein the set ofcontent is a first set of content, the location is a first location, andthe available time slot is a first available time slot, and wherein theone or more instructions further cause the device to: identify, a secondset of content, associated with a second location, for a secondavailable time slot associated with the second location; assign valuesto the second set of content; and cause, based on determining that thevalues assigned to the content of the second set of content satisfy thethreshold value, the second set of content to be utilized during thesecond available time slot for viewing at the second location.
 17. Thenon-transitory computer-readable medium of claim 15, wherein the one ormore instructions further cause the device to: receive data identifyinga quantity of devices that presented the replacement content; and updatethe second value associated with the replacement content based on thedata.
 18. The non-transitory computer-readable medium of claim 15,wherein the set of content is a first set of content, and wherein theone or more instructions further cause the device to: replace the firstcontent with the replacement content; and cause a second set of contentto be provided during the available time slot at the location, whereinthe second set of content includes the replacement content and contentof the first set of content.
 19. The non-transitory computer-readablemedium of claim 15, wherein the one or more instructions further causethe device to: determine, based on processing data identifying aplurality of content available for the available time slot with amachine learning model, a quantity of content to select for the set ofcontent; and select, based on the determined quantity, the set ofcontent from the plurality of content.
 20. The non-transitorycomputer-readable medium of claim 15, wherein the threshold value is adynamic value that changes based on at least one of: a time of day,information associated with content programming, or a viewing locationassociated with viewing content data.